module.exports = class extends think.Service {
  constructor() {
    super();

    this._model = this.model('todo');
  }

  /**
   * 创建一条新的待办事项
   * @param {number} userId 用户唯一标识
   */
  create(userId, todo) {
    return this._model.add({ user_id: userId, todo });
  }

  /**
   * 更新一条待办事项
   * @param {number} todoId 待办事项唯一标识
   * @param {boolean} complete 是否完成
   * @param {string} todo 待办事项内容
   */
  async update(todoId, complete, todo) {
    const affectedRows = await this._model
      .where({ id: todoId })
      .update({ complete, todo });
    return affectedRows;
  }
};
